let object = {
  a: 1,
  b: 2,
  c: 3,
};

let arr = ["test1", "test2", "test3"];

//for of 可遍历可迭代的对象
for (const iterator of arr) {
  console.log(iterator);
}

for (const key in object) {
  const element = object[key];
  console.log(key, element);
}

for (const key in arr) {
  console.log("类型", typeof key);
  const element = arr[key];
  console.log(key, element);
}

let strinf = "abcdefg";

for (const iterator of strinf) {
  console.log("字符串", iterator);
}

// for in遍历的是数组的索引（即键名），而for of遍历的是数组元素值

// for in总是得到对象的key或数组、字符串的下标

// for of总是得到对象的value或数组、字符串的值

// for of适用遍历数/数组对象/字符串/map/set等拥有迭代器对象（iterator）的集合，但是不能遍历对象，因为没有迭代器对象，
// 但如果想遍历对象的属性，你可以用for in循环（这也是它的本职工作）或用内建的Object.keys()方法
